import Vue from 'vue';
import clModel from './cl-model.vue'; // 导入刚才创建的弹窗组件

// 定义一个弹窗管理器
const PopupManager = {
  instance: null,

  open(options = {}) {
	  console.log(12313123);
    if (!this.instance) {
      // 使用Vue.extend创建组件构造器
      const PopupConstructor = Vue.extend(clModel);
	 
	  console.log( document);
      // 实例化组件
      this.instance = new PopupConstructor({
        el: document.createElement('div'),
        data: options // 传递props
      });
      // 将实例添加到body中
      document.body.appendChild(this.instance.$el);
    } else {
      this.instance.title = options.title || this.instance.title; // 更新message
	  this.instance.content = options.content || this.instance.content; // 更新message
    }
    this.instance.showModel = true;
  },

  close() {
    if (this.instance) {
      this.instance.showModel = false;
      setTimeout(() => {
        if (!this.instance.showModel) {
          document.body.removeChild(this.instance.$el);
          this.instance = null;
        }
      }, 600); // 延时移除，模拟动画结束
    }
  }
};

// 挂载到Vue原型上
Vue.prototype.$popup = PopupManager;

export default PopupManager; // 可以选择导出以便在其他地方使用